<html onclick="alert('html');">
    <head onclick="alert('head');">
    <script type="text/javascript">
        window.onload = init;

        function init() {
            alert('init()');
            var body = document.getElementById('body');
            //body.oncontextmenu = onContextMenuBody;
            var debug = document.getElementById('debug');
            for (var i in body) {
                debug.innerHTML += i + ': ' + body[i] + '<br>';
            }
            body.oncontextmenu = function() {
                alert('body oncontextmenu');
            }
            body.onclick= function() {
                alert('body onclick');
            }

        }
        
        function onContextMenuBody() {
            alert(2);
            return false;
        }

        function getPageScroll(){

        	var yScroll;

        	if (self.pageYOffset) {
        		yScroll = self.pageYOffset;
        	} else if (document.documentElement && document.documentElement.scrollTop){	 // Explorer 6 Strict
        		yScroll = document.documentElement.scrollTop;
        	} else if (document.body) {// all other Explorers
        		yScroll = document.body.scrollTop;
        	}

        	arrayPageScroll = new Array('',yScroll) 
        	return arrayPageScroll;
        }

        function getPageSize(){
        	
        	var xScroll, yScroll;
        	
        	if (window.innerHeight && window.scrollMaxY) {	
        		xScroll = document.body.scrollWidth;
        		yScroll = window.innerHeight + window.scrollMaxY;
        	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
        		xScroll = document.body.scrollWidth;
        		yScroll = document.body.scrollHeight;
        	} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
        		xScroll = document.body.offsetWidth;
        		yScroll = document.body.offsetHeight;
        	}
        	
        	var windowWidth, windowHeight;
        	if (self.innerHeight) {	// all except Explorer
        		windowWidth = self.innerWidth;
        		windowHeight = self.innerHeight;
        	} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
        		windowWidth = document.documentElement.clientWidth;
        		windowHeight = document.documentElement.clientHeight;
        	} else if (document.body) { // other Explorers
        		windowWidth = document.body.clientWidth;
        		windowHeight = document.body.clientHeight;
        	}	
        	
        	// for small pages with total height less then height of the viewport
        	if(yScroll < windowHeight){
        		pageHeight = windowHeight;
        	} else { 
        		pageHeight = yScroll;
        	}

        	// for small pages with total width less then width of the viewport
        	if(xScroll < windowWidth){	
        		pageWidth = windowWidth;
        	} else {
        		pageWidth = xScroll;
        	}
        	arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight) 
        	return arrayPageSize;
        }








        
    </script>

    </head>

    <!--<body id="body" onclick="alert('body1');">-->
    <body id="body">
        <div onclick="alert('outer');" style="background-color:#ff0000;">
            outer
            <div onclick="alert('inner');" style="background-color:#ffff00;">
            inner
            </div>
        </div>
        
        <hr>
        <div id="debug"></div>







    </body>
</html>
